<?
####################################################################################################
# servicos.php                                                                                     #
####################################################################################################
# Services for ACDM framework v1.0 ©2011 ACDM. Todos os direitos reservados                        #
# Script escrito por Carlos Barreto Feitoza Filho                                                  #
# Contato: carlos.feitoza.filho@gmail.com.br ou ICQ: 29391688 (Authorize)                          #
# ------------------------------------------------------------------------------------------------ #
# NOME DO PROGRAMA: Services for ACDM framework                                                    #
# VERSÃO: 1.0                                                                                      #
# ÚLTIMA MODIFICAÇÃO: 07/03/2011                                                                   #
# ------------------------------------------------------------------------------------------------ #
# Os serviços são executados separadamente e nunca por meio de include, por isso eles precisam     #
# usar "require". Usar "require_once" seria desnecessário, pois a cada execução deste script seria #
# como se fosse a primeira vez                                                                     #
####################################################################################################
require($_SERVER["DOCUMENT_ROOT"] . "/php/lib/defines.inc");
require($_SERVER["DOCUMENT_ROOT"] . "/php/lib/configuracoes.inc");
require($_SERVER["DOCUMENT_ROOT"] . "/php/lib/functions.php");
require($_SERVER["DOCUMENT_ROOT"] . "/php/checksession.php");
/* ============================================================================================== */
$servico = isset($_REQUEST["s"])?$_REQUEST["s"]:false;

if ($servico) {
  /* ============================================================================================ */
  /* Obtém a data e hora do servidor no formato unix, i.e., segundos desde 01/01/1970 00:00:00    */
  /* ============================================================================================ */
  if ($servico == "datahoraservidor") {
    echo(time() * 1000);
  /* ============================================================================================ */
  /* Realiza procedimentos de login, validando o usuário e criando sua sessão                     */
  /* ============================================================================================ */
  } else if ($servico == "login") {

    if (!isset($_POST["usuario"]) || !isset($_POST["senha"]) || ($_POST["usuario"] == "") || ($_POST["senha"] == "")) {
      echo("PUPSUPAPRIOPOUPSEPNHAPNAOPINPFORPMAPDOS");
    } else {

      $usuario = $_POST["usuario"];
      $senha   = md5($_POST["senha"]);

      include("./lib/banco.php");

      $database = new Banco(_MYSQLHOST,_MYSQLUSER,_MYSQLPASS,_MYSQLBASE);

      if ($resultado = $database->selecionar("USUARIO",array("BI_USUARIO_ID","VA_NOME","SM_CREDITOS","BO_ADMINISTRADOR"),array("VA_APELIDO" => $usuario , "CH_SENHA" => $senha))) {
        if ($resultado->num_rows === 1) {
          $linha = $resultado->fetch_object();
          $_SESSION["BI_USUARIO_ID"] = $linha->BI_USUARIO_ID;
          $_SESSION["VA_NOME"] = $linha->VA_NOME;
          $_SESSION["SM_CREDITOS"] = $linha->SM_CREDITOS;
          $_SESSION["BO_ADMINISTRADOR"] = $linha->BO_ADMINISTRADOR;
          $_SESSION["VA_APELIDO"] = $usuario;
          $_SESSION["CH_SENHA"] = $senha;
          echo("PLOPGINPBEMPSUPCEPDIPDO");
        } else {
          echo("PLOPGINPINPCORPREPTO");
        }
        $resultado->close();
        $database->desconectar();
      }
    }
  /* ============================================================================================ */
  /* Realiza procedimentos de logout, desvalidando e destruindo sua sessão                        */
  /* ============================================================================================ */
  } else if ($servico == "logout") {
    $_SESSION = array();

    if (isset($_COOKIE[session_name()])) {
      setcookie(session_name(), '', time()-42000, '/');
    }

    session_destroy();
    /* O serviço de logout é usado em um link comum. Isto é proposital de forma que ao se deslogar,
    todo o site se recarregue, revalidando-se */
    header("location: /");
  /* ============================================================================================ */
  /* Precarrega um conjunto de imagens baseadas na página informada. Dependendo de onde se está,  */
  /* um conjunto diferente de imagens precisam ser precarregadas                                  */
  /* ============================================================================================ */
  } else if ($servico == "precarregarImagens") {
    // Por enquanto, as imagens são precarregadas por seção. Caso a seção tenha muitas subseções com
    // muitas imagens isso pode ser ruim. Neste caso, se precisar de mais controle no futuro,
    // incluia em cada página uma variável tal como a variável Titulo e use-a de forma semelhante,
    // como é feito na função BuildNicePath

    // Os caminhos das imagens são sempre relativos à página index.html, já que elas serão
    // carregadas dentro deste contexto

    // Abaixo, imagens que sempre precisam ser carregadas
    $imagens = <<<IMGS
SEMPRE PRECARREGADAS
<img src="img/ajax-loader1.gif" alt="imagem precarregada" />
<img src="img/ajax-loader2.gif" alt="imagem precarregada" />
<img src="img/ajax-loader3.gif" alt="imagem precarregada" />
<img src="img/ajax-loader4.gif" alt="imagem precarregada" />

IMGS;

    if (strpos($_POST["p"],"sit/home") === 0) {
      $imagens .= "PRECARREGADAS POR SIT/HOME";
    } else if (strpos($_POST["p"],"sit/leiloes") === 0) {
      $imagens .= "PRECARREGADAS POR SIT/LEILOES";
    } else if (strpos($_POST["p"],"sit/produtos") === 0) {
      $imagens .= "PRECARREGADAS POR SIT/PRODUTOS";
    } else if (strpos($_POST["p"],"sit/pcontrole") === 0) {
      $imagens .= "PRECARREGADAS POR SIT/PCONTROLE";
    } else if (strpos($_POST["p"],"sit/administracao") === 0) {
      $imagens .= "PRECARREGADAS POR SIT/ADMINISTRACAO";
    } else if (strpos($_POST["p"],"sit/ajuda") === 0) {
      $imagens .= "PRECARREGADAS POR SIT/AJUDA";
    }

    echo($imagens);
  /* ============================================================================================ */
  } else {
    echo("Serviço não encontrado");
  }
} else {
  echo("Serviço não informado");
}
?>
